Minimum Depth of Binary Tree

Given a binary tree, find its minimum depth.

The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.

Solution:

  1. /**
  2. * Definition for a binary tree node.
  3. * public class TreeNode {
  4. * int val;
  5. * TreeNode left;
  6. * TreeNode right;
  7. * TreeNode(int x) { val = x; }
  8. * }
  9. */
  10. public class Solution {
  11. public int minDepth(TreeNode root) {
  12. if (root == null)
  13. return 0;
  14. if (root.left == null)
  15. return 1 + minDepth(root.right);
  16. if (root.right == null)
  17. return 1 + minDepth(root.left);
  18. return 1 + Math.min(minDepth(root.left), minDepth(root.right));
  19. }
  20. }